import axios from "axios";
import {
  vm
} from "@/main";
axios.defaults.baseURL = "https://www.diantangkeji.com/server";
// axios.defaults.baseURL = 'http://47.113.179.102:8080';
axios.defaults.timeout = 300000; //请求超时时间30秒
// axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
// axios.defaults.headers.common["Content-Type"] = "application/json";
axios.interceptors.request.use(
  config => {
    // let repeat = false,
    //   requestObjKey = `${config.baseURL}${config.url}Method:${config.method}`,
    //   requestMap = vm.$store.state.app.requestMap
    // if (config.method != 'get') {
    //   if (requestMap.has(requestObjKey)) {
    //     repeat = true
    //     return Promise.reject(false);
    //   }
    // }
    // if (!repeat) {
    var auth = sessionStorage.getItem("auth");
    // config.headers.Authorization = `Bearer ${auth}`;
    // requestMap.set(requestObjKey, 1)
    return config;
    // }

  },
  error => {
    return Promise.reject(error);
  }
);

axios.interceptors.response.use(
  response => {
    console.log('原始', response);
    // var requestMap = vm.$store.state.app.requestMap
    const {
      data: {
        code,
        message,
        result,
        msg
      },
      config
    } = response;
    // let requestObjKey = `${config.url}Method:${config.method}`
    // setTimeout(() => {
    //   requestMap.delete(requestObjKey)
    // }, 5000)
    if (code == 'ok') {
      return response.data; //golang
      //    return response.data//c#
    } else {
      vm.$Message.warning(message || msg);
      return Promise.reject();
    }
  },
  error => {
    if (error) {
      // var requestMap = vm.$store.state.app.requestMap
      // var {
      //   response: {
      //     data,
      //     statusText,
      //     status,
      //     config
      //   }
      // } = error;
      // var {
      //   code,
      //   message,
      //   msg
      // } = data;
      // let requestObjKey = `${config.url}Method:${config.method}`
      // requestMap.delete(requestObjKey)
      // if (status === 401 && statusText === "Unauthorized") {
      //   vm.$Message.destroy()
      //   vm.$Message.error(`登录状态过期，请重新登录`);
      //   vm.$router.replace({
      //     name: 'login'
      //   })
      //   // return false
      // } else {
      //   vm.$Message.error(message || msg);
      // }
      return;
      return Promise.reject(error);
    }


  }
);
